package exercises.newcoder.solution;

import java.util.Scanner;

/**
 * <a href="https://www.nowcoder.com/study/live/716/1/5">
 * 第5节 随堂习题-排序（选择排序）</a>
 *
 * @author or2
 * @Description 给你一个n代表有n个数字，然后你需要使用选择排序将这些数字从小到大排好。
 * @create 2021年09月16日 时间: 13:07
 */
public class SelectionSort {
    public static void main(String[] args) {
//        处理输入
        Scanner scanner = new Scanner(System.in);
        int totalAmount = scanner.nextInt();
        int[] arrIn = new int[totalAmount];
        for (int i = 0; i < totalAmount; i++) {
            arrIn[i] = scanner.nextInt();
        }
//        选择排序
        for (int i = 0; i < totalAmount; i++) {
//            找出最大数据, 放置最后
            int max = 0;
            for (int j = 1; j < totalAmount - i; j++) {
                if (arrIn[j] > arrIn[max]) {
                    max = j;
                }
            }
            int tmp = arrIn[totalAmount - i - 1];
            arrIn[totalAmount - i - 1] = arrIn[max];
            arrIn[max] = tmp;
        }

        for (int i : arrIn) {
            System.out.print(i + " ");
        }
    }
}
